﻿using SPSAndong.Handle;
using SPSAndong.Model;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TitaniumAS.Opc.Client.Da;

namespace SPSAndong.Comm
{
    public class GolbalVariable
    {
        /// <summary>
        /// 系统设备集合
        /// </summary>
        public static ConcurrentBag<SystemDeviceModel> SystemDeviceBag { get; set; }
        /// <summary>
        /// 安东工程对象集合
        /// </summary>
        public static ConcurrentBag<ProjectSetModel> ProjectBag { get; set; }
        /// <summary>
        /// SPS安东软件配置
        /// </summary>
        public static AppSetModel AppSet { get; set; }
        /// <summary>
        /// OPC信号集合
        /// </summary>
        public static ConcurrentBag<OpcTagModel> OpcTagBag { get; set; }
        /// <summary>
        /// opc操作类
        /// </summary>
        public static OpcHelper OpcHelper { get; set; }
        /// <summary>
        /// OPC组对象集合
        /// </summary>
        public static List<OpcDaGroup> OpcDaGroupList { get; set; }
        /// <summary>
        /// OPC组实体集合
        /// </summary>
        public static List<OpcGroupModel> OpcGroupList { get; set; }
        /// <summary>
        /// 语音配置集合
        /// </summary>
        public static List<VoiceAreaMusicModel> VoiceAreaMusicList { get; set; }
        /// <summary>
        /// 语音服务
        /// </summary>
        public static VoiceHelper VoiceSever { get; set; }
        /// <summary>
        /// 加班时间
        /// </summary>
        public static int Overtime { get; set; }
        /// <summary>
        /// UPS实时状态缓存
        /// </summary>
        public static UpsModel UpsStatus { get; set; }
        /// <summary>
        /// plc实时连接状态缓存 
        /// </summary>
        public static bool PlcState { get; set; }
        /// <summary>
        /// lip实时连接状态缓存
        /// </summary>
        public static bool LipState { get; set; }
        /// <summary>
        /// 丰田工机数据集合
        /// </summary>
        public static List<TriaModel> PlcTriaList { get; set; }
        /// <summary>
        /// 丰田工机连接对象集合
        /// </summary>
        public static List<TriaConnectModel> TriaConnectList { get; set; }
        /// <summary>
        /// 丰田工机组集合
        /// </summary>
        public static List<TriaGroupModel> TriaGroupList { get; set; }
        /// <summary>
        /// 丰田工机项集合
        /// </summary>
        public static List<TriaItemModel> TriaItemList { get; set; }

    }
}
